package com.eventos;

import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.ExecutionException;

import org.json.JSONArray;
import org.json.JSONException;

import android.content.Context;
import android.net.ParseException;
import android.util.Log;

import com.eventssmartphone.JSONReader;
import com.eventssmartphone.JSONReader;
import com.eventssmartphone.JSONReaderListener;


public class GestorTipoEvento {

private static final GestorTipoEvento gestor = new GestorTipoEvento();
	
	public static GestorTipoEvento getInstance(){
		return gestor;
	}
	
	public void dameTiposEvento(int idCategoria, Context context){
		JSONReader reader = new JSONReader();
		reader.setJSONReaderListener((JSONReaderListener)context);

		reader.execute("http://200.16.7.112:3000/event_management/events/dameTipoEventos/"+String.valueOf(idCategoria) +".json");
		
	}
	
	public List<TipoEventoBean> procesarDameTiposEvento(JSONArray jTiposEvento, int idCategoria){
		List<TipoEventoBean> lstTipo= new ArrayList<TipoEventoBean>();
		try{
			for(int i=0;i < jTiposEvento.length();i++){
			
				TipoEventoBean objTipo = new TipoEventoBean();
				objTipo.setIdTipo(jTiposEvento.getJSONObject(i).getInt("id"));
				objTipo.setTipo(jTiposEvento.getJSONObject(i).getString("tipo"));
				objTipo.setCategoria(idCategoria);

				lstTipo.add(objTipo);
				
			}	
			return lstTipo;
		}catch(JSONException e){
			Log.e("log_tag", "Error parsing data "+e.toString());
			return null;
		} catch (ParseException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
			return null;
		}
	}

	
	
	public List<TipoEventoBean> dameTiposEvento1(){
		List<TipoEventoBean> lista = new ArrayList<TipoEventoBean>();
		
		TipoEventoBean tipo = new TipoEventoBean();
		tipo.setIdTipo(1);
		tipo.setTipo("Rock");
		tipo.setCategoria(1);
		lista.add(tipo);
		
		tipo = new TipoEventoBean();
		tipo.setIdTipo(2);
		tipo.setTipo("Pop");
		tipo.setCategoria(1);
		lista.add(tipo);
		
		tipo = new TipoEventoBean();
		tipo.setIdTipo(3);
		tipo.setCategoria(1);
		tipo.setTipo("Punk");
		lista.add(tipo);
		
		tipo = new TipoEventoBean();
		tipo.setIdTipo(4);
		tipo.setTipo("Salsa");
		tipo.setCategoria(1);
		lista.add(tipo);
		
		tipo = new TipoEventoBean();
		tipo.setIdTipo(5);
		tipo.setCategoria(3);
		tipo.setTipo("Voley");
		lista.add(tipo);
		
		tipo = new TipoEventoBean();
		tipo.setIdTipo(6);
		tipo.setCategoria(3);
		tipo.setTipo("Fútbol");
		lista.add(tipo);
		
		tipo = new TipoEventoBean();
		tipo.setIdTipo(7);
		tipo.setCategoria(3);
		tipo.setTipo("Hockey");
		lista.add(tipo);
		
		return lista;
		
	}
	

	public List<TipoEventoBean> dameTiposEvento1(int idCategoria){
		List<TipoEventoBean> lista1 = dameTiposEvento1();
		List<TipoEventoBean> lista = new ArrayList<TipoEventoBean>();
		
		for (int i=0; i<lista1.size(); i++){
		
			if (lista1.get(i).getCategoria()==idCategoria) {lista.add(lista1.get(i));
					
			}
		
		}
		
		return lista;
		
	}
	
}
